<?php
namespace app\admin\model;

use think\facade\Cache;
use think\facade\Db;
use think\Model;

class Goods extends Model
{
//    //主键
//    protected $pk='goods_id';
//    //表名
//    protected $name='goods';
//    protected $type='ecm_goods';
//    public static function setGoodList()
//    {
//        //缓存
//        //has 判断缓存是否存在   get使用缓存   set设置缓存
////         if (Cache::has('goodsList')){
////            $list= Cache::get('goodsList');
////         }else{
////             $list=Db::name('goods')->where($where)->select();
////             Cache::set('goodsList',$list,10);
////         }
////             return $list;
////         }
//        $list=Goods::select();
//        return $list;
//
//    }
//        //搜索器
//    //方法命名规范:search(搜索器名)Attr
//    //[表达式查询]
//    //模糊查询
//    //时间查询
//    //价格查询
//    //[链表操作]
//    //连表
//    //排序
//
//     public static function   getGoodsList(){
//        return Goods::withSearch(['goods_name','goods_id','order','join'],
//                [
//                    'goods_name'=>'杰',
//                    'goods_id'=>10,
//                    'order'=>['goods_id desc'],
//                    'join'=>'ecm_gcategory'
//                ])
//            ->select();
//
//         }
//         //连表
//     public function searchJoinAttr($query,$value,$data){
//
//          $query->join($value,'ecm_goods.cate_id='.$value.'.cate_id');
//      }
//
//            //链式操作
//         public static function   searchOrderAttr($query,$value,$data){
//                 $query->order($value);
//             }
//
//        //withSearch()  触发搜索器
//    //参数
//    //搜索器名称  数组
//    //搜索器值  数组
//    //方法命名规范:search(搜索器名)Attr  大驼峰法
//    //参数
//    //表达式搜索
//    //$query  查询语句对象
//    //$value  搜索器名对应的值
//    //$data  搜索器所有的值
//          public static function   searchGoodsNameAttr($query,$value,$data){
//          $query->where('goods_name','like','%'.$value.'%');
//        }
//    public static function   searchGoodsIdAttr($query,$value,$data){
//        $query->where(function ($query) use ($value){
//            $query->whereOr('goods_id','<',$value);
//
//        });
//
//
//
//    }
//
//    //[模型层]==获取器
//    //获取器定义方法  get字段Attr  字段大驼峰命名
//    //[自动触发条件]
//    //模型的数据对象取值操作（$model->field_name）；
//     //模型的序列化输出操作（$model->toArray()及toJson()）;
//    //显式调用getAttr方法（$this->getAttr('field_name')）；
//    //[获取器使用场景]
//    //时间日期字段的格式化输出
//    //集合或枚举类型输出
//    //数字状态字段的输出
//    //组合字段的输出
//    //[参数]
//    //第一参数为数据中当前字段值,第二个为一维数组数据
//
//
//    //获取器(if_show) 是否显示字段
////     public static function   getIfShowAttr($value){
////             if($value==1){
////                 return '<font color="#7cfc00">显示</font>';
////             }else{
////                 return '<font color="red">隐藏</font>';
////             }
////         }
//         //获取器(add_time) 转时间格式
// public static function   getAddTimeAttr($v){
//        return date('Y-m-d H:i:s',$v);
//     }
//     //获取器(goods_name)$v为当前字段值,$data参数是本条数据全部值
// public static function   getGoodsNameAttr($v,$data){
//        //$arr=Gcategory::getCateListAll() 去分类模型中把数据缓存 减少直接多次调用数据库
//        if (Cache::has('fen')){
//            $cate=Cache::get('fen');
//        }else{
//            $cate=Db::name('gcategory')->
//            where('cate_id','=',$data['cate_id'])->value('cate_name');
//            Cache::set('fen',$cate,10);
//        }
//
//if (mb_strlen($v)>6){
//    return '['.$cate.']'.mb_substr($v,0,6,'utf-8').'...';
//}else{
//    return '['.$cate.']'.$v;
//}
//     }
// public static function   getIfShowZhAttr($v,$data){
//         if($data['if_show']==1){
//             return '<font color="#7cfc00">显示</font>';
//         }else{
//             return '<font color="red">隐藏</font>';
//         }
//
//     }
//
//
//     //商品添加Db添加
//  public static function   GoodListAdd(){
//
//
//      }
//
//
//


}